Non-monotonic logic